/****************************************************************************
	This file is part of Basqet.

	Basqet is free software: you can redistribute it and/or modify
	it under the terms of the GNU General Public License as published by
	the Free Software Foundation, either version 3 of the License, or
	(at your option) any later version.

	Basqet is distributed in the hope that it will be useful,
	but WITHOUT ANY WARRANTY; without even the implied warranty of
	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
	GNU General Public License for more details.

	You should have received a copy of the GNU General Public License
    along with Basqet.  If not, see <http://www.gnu.org/licenses/>.

****************************************************************************/

#include "cmdmovesplitter.h"

#include "cmdcommons.h"

#include "textnotedata.h"


#include <QtDebug>

CmdMoveSplitter::CmdMoveSplitter(TextNoteData* subject)
		:mSubject(subject)
{
	setOldSizes(subject->getHeaderBodySliderSizes());
}

void CmdMoveSplitter::redo()
{
	mSubject->setHeaderBodySliderSizes(mNewSizes);

}


void CmdMoveSplitter::undo()
{
	mSubject->setHeaderBodySliderSizes(mOldSizes);
}


void CmdMoveSplitter::setOldSizes(QList<int> sizes)
{
	mOldSizes = sizes;
}

void CmdMoveSplitter::setNewSizes(QList<int> sizes)
{
	mNewSizes = sizes;
}


int CmdMoveSplitter::id () const
{
	return CmdCommons::CmdMoveSplitter;
}

 bool CmdMoveSplitter::mergeWith(const QUndoCommand *cmd)
 {
	const CmdMoveSplitter* pOther = dynamic_cast<const CmdMoveSplitter*>(cmd);

	 if (pOther)
	 {
		qDebug() << "Merge slidermoves";
		setNewSizes(pOther->mNewSizes);
		return true;
	 }

	return false;
 }
